﻿using System;

namespace QuarryPlanner.Domain.Entities
{
    // Author: Ryan Redburn
    // Created: 11/10/2014

    #region [ Updates ]

    // Author: Ryan Redburn
    // Date: 11/18/2014
    // Revision: Added missing properties.

    #endregion

    /// <summary>
    /// Class used to represent the work place exam report.
    /// </summary>
    public sealed class WorkPlaceExam
    {
        #region [ Properties ]

        /// <summary>
        /// Database generated ID.
        /// </summary>
        public int WorkPlaceExamID { get; set; }

        /// <summary>
        /// Whether or not the waterjet was examined.
        /// </summary>
        public bool WaterJet { get; set; }

        /// <summary>
        /// Whether or not the surfacer was examined.
        /// </summary>
        public bool Surfacer { get; set; }

        /// <summary>
        /// Whether or not the polisher was examined.
        /// </summary>
        public bool Polisher { get; set; }

        /// <summary>
        /// Whether or not the 7' saw was examined.
        /// </summary>
        public bool SevenFootSaw { get; set; }

        /// <summary>
        /// Whether or not the 5' saw was examined.
        /// </summary>
        public bool FiveFootSaw { get; set; }

        /// <summary>
        /// Whether or not the guillotine was examined.
        /// </summary>
        public bool Guillotine { get; set; }

        /// <summary>
        /// Whether or not the electrical was examined.
        /// </summary>
        public bool Electrical { get; set; }

        /// <summary>
        /// Whether or not the welding equipment was examined.
        /// </summary>
        public bool WeldingEquipment { get; set; }

        /// <summary>
        /// Whether or not the highwalls were examined.
        /// </summary>
        public bool Highwalls { get; set; }

        /// <summary>
        /// Whether or not the berms were examined.
        /// </summary>
        public bool Berms { get; set; }

        /// <summary>
        /// Whether or not the walkways were examined.
        /// </summary>
        public bool Walkways { get; set; }

        /// <summary>
        /// Whether or not the raods were examined.
        /// </summary>
        public bool Roads { get; set; }

        /// <summary>
        /// Whether or not the stockpiles were examined.
        /// </summary>
        public bool Stockpiles { get; set; }

        /// <summary>
        /// Whether or not the clean up gear was examined.
        /// </summary>
        public bool CleanUp { get; set; }

        /// <summary>
        /// Whether or not the fire exstinguisher was examined.
        /// </summary>
        public bool FireExstinguisher { get; set; }

        /// <summary>
        /// Whether or not the first aid supplies were examined.
        /// </summary>
        public bool FirstAidSupplies { get; set; }

        /// <summary>
        /// Whether or not the emergency supplies were examined.
        /// </summary>
        public bool EmergencySupplies { get; set; }

        /// <summary>
        /// Whether or not the communication gear was examined.
        /// </summary>
        public bool Communications { get; set; }

        /// <summary>
        /// Whether or not the house keeping supplies were examined.
        /// </summary>
        public bool HouseKeeping { get; set; }

        /// <summary>
        /// Whether or not the signage was examined.
        /// </summary>
        public bool Signage { get; set; }

        /// <summary>
        /// Whether or not the PPE was examined.
        /// </summary>
        public bool PPE { get; set; }

        /// <summary>
        /// Whether or not the cut off saw was examined.
        /// </summary>
        public bool CutOffSaw { get; set; }

        /// <summary>
        /// Any report notes.
        /// </summary>
        public string Notes { get; set; }

        /// <summary>
        /// Date the report was filled out.
        /// </summary>
        public DateTime DateAdded { get; set; }

        #endregion

        #region [ Constructors ]

        /// <summary>
        /// Creates an instance of WorkPlaceExam.
        /// </summary>
        public WorkPlaceExam() { }

        #endregion
    }
}
